package demo02;
//只出现一次的数字III
class Solution {
    public int[] singleNumber(int[] nums) {
        int xor_sum  = 0;
        for(int num: nums){
            xor_sum  = num ^ xor_sum ;
        }
        int a = 0;
        int b = 0;
        int mask = xor_sum ^((-1)*xor_sum);
        for(int i =0;i<nums.length;i++){
            if((mask & nums[i]) == 0){
                a = a ^ nums[i];
            }else{
                b = b ^ nums[i];
            }
        }
        return new int[]{a,b};
    }
}